package com.aviator.detective.execute.listener;

import com.aviator.detective.execute.eventbus.AllAllowConcurrentEvents;
import com.aviator.detective.execute.eventbus.AllSubscribe;
import com.aviator.detective.execute.event.DecisionTableExecuteCompleteEvent;
import com.aviator.detective.execute.event.DecisionTableExecuteErrorEvent;
import com.aviator.detective.execute.event.DecisionTableExecuteStartEvent;

@AllSubscribe
@AllAllowConcurrentEvents
public interface DecisionTableExecuteListener extends Listener{

    void beforeDecisionTableExecute(DecisionTableExecuteStartEvent event);

    void afterDecisionTableExecute(DecisionTableExecuteCompleteEvent event);

    void decisionTableExecuteError(DecisionTableExecuteErrorEvent event);
}
